<?php
// Define path to application directory
defined('APPLICATION_PATH')
    || define('APPLICATION_PATH', realpath(dirname(__FILE__) . '/../application'));

// Define application environment
defined('APPLICATION_ENV')
    || define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'production'));

// Ensure library/ is on include_path
set_include_path(implode(PATH_SEPARATOR, array(
    realpath(APPLICATION_PATH . '/../library'),
    get_include_path(),
)));

/** Zend_Application */
require_once 'Zend/Application.php';  

// Create application, bootstrap, and run
$application = new Zend_Application(
    APPLICATION_ENV, 
    APPLICATION_PATH . '/application.ini'
);
$application->bootstrap();

// set up the server

$api = $this->getRequest()->getParam('api');
if($api != null) {
    $apiParts = explode('_', $api);
    if(is_array($apiParts) && count($apiParts) == 2) {
        $filter = new Zend_Filter_Alnum();
        $module = $filter->filter($apiParts[0]);
        $model = $filter->filter($apiParts[1]);
        $fileName = APPLICATION_PATH . '/modules/' . $module . '/models/' . $model . '.php';
        if(file_exists($fileName)) {
            $classname = $module . '_Model_' . $model;
            $server = new Zend_Rest_Server();
            $server->setClass($classname);
            $server->handle();           
        }                
    }
}